---
title: SAIF.Business.View.Policy dependencies
summary: Internal and external dependencies for the policy-view and policy-authorization component.
status: draft
owner: SAIF Claims BOF team
last_reviewed: 2026-08-21
library: SAIF.Business.View.Policy
reference_type: embedded
---

# SAIF.Business.View.Policy dependencies

## Internal dependencies

| Dependency | Reference Type | Usage |
| --- | --- | --- |
| [SAIF.Business.Policy](../saif-business-policy/overview.md) | Project Reference | Supplies `IPolicyAssociationType`, `IPolicyHeaderAssociation`, `PolicyAssociationTypeCategories`, and `StandardAssociationTypes`, consumed by the `Associations\` sub-folder and `clsPolicyData` for policy-to-policy association resolution. |
| [SAIF.Business.Utilities](../saif-business-utilities/overview.md) | Project Reference | Supplies `clsAddress` (base class of `clsPolicyAddress`), `clsPhone`, `clsName`, `clsSmartString`/`clsSmartDecimal`/`clsSmartDate`, `clsCodeCollection`, and formatting helpers (`StandardFormats`) used across nearly every class in this library. |

## External dependencies

| Dependency | Version | Usage |
| --- | --- | --- |
| SAIF.BOF.Framework (Bindable, Connection, Core, DNS, Logging, Mail, Security, Security.EnvironmentApi) | 2.0.22279.1 | Supplies the BOF runtime base types (`clsBusinessBase`, `clsBusinessCollectionBase`, `clsBusinessCollection(Of T)`, `IBusinessCriteria`, `IDataPortalInfo`, `IPortalRequest`, `IDataRequest`, `clsSAIFDataReader`, `clsResultSet`, `clsSecurityPrincipal`, `AppGlobal.EnvironmentService`) that every business object and `clsPolicySecurity` derive from or consume. |
| SAIF.BOF.Business (package name `SAIF.Business`) | 2.1.23088.1 | Supplies `clsConstants` (including `Messages.InvalidSQLProperty`, `DataMaskingConstants.*`) and `clsUserType`, used for read-only SQL suppression messaging and per-user-type authorization logic. |
| SAIF.Framework.Common | not specified in analysis** | General framework extension-method helpers (`ToIn`, `ToYesNoString`) used in inline SQL/string construction. |
| Oracle.ManagedDataAccess | 21.5.0 | Oracle ADO.NET provider; confirms Oracle as the primary database for nearly all policy-view retrieval. |
| SAIF.HashUtil, SAIF.ResourceFiles, SAIF.Web.API.Clients, SAIF.Web.API.Core | not specified in analysis** | Referenced at the assembly level in the `.vbproj`; no direct usage found in scanned source — likely transitive requirements of the referenced BOF/Business packages.* |
| Autofac, FluentValidation, ImagingAPI.Client/Core, iTextSharp, log4net, Microsoft.Bcl.AsyncInterfaces, Newtonsoft.Json, PdfAPI.Client/Core, RestSharp, System.Net.Http.Formatting, System.Web.Http* | not specified in analysis** | Referenced at the assembly level per the `.vbproj`; no direct usage found in the scanned `.vb` source — appear to be inherited/transitive references from the BOF framework packages rather than in-library dependencies.* |
| BankValidator | not specified in analysis** | Referenced at the assembly level; no usage found in scanned source.** |

## Transitive dependencies

Dependencies in this section are inherited from dependency framework libraries. They are not directly referenced by this library but are required at runtime through framework packages.

| Dependency | Source framework | Type | Usage |
| --- | --- | --- | --- |
| `clsRulesManager` | `SAIF.Framework.Core` | Transitive | Owned internally by `clsBusinessBase`†-derived objects (`clsPolicyData`, `clsPolicyAddress`, etc.) for rule registration/enforcement (`Rules.CheckRules("RuleName")`) and broken-rule tracking surfaced via `IDataErrorInfo`.† |
| `clsDataPortalInfo` / `IDataPortalInfo` | `SAIF.Framework.Core` | Transitive | Underlies the `IDataPortalInfo` instances (`DPI`, `DPISql`) passed to and constructed by this library's objects to dispatch create/retrieve/data-portal requests.† |
| `clsBusinessCriteriaBase` / `clsRetrieveOnlyBusinessCriteria` | `SAIF.Framework.Core` | Transitive | Base retrieval-only criteria pattern inherited by this library's 16 `IBusinessCriteria` implementations, which all return empty/throw on mutating SQL properties consistent with `clsRetrieveOnlyBusinessCriteria`'s enforced read-only contract.† |
| RestSharp | `SAIF.Framework.Core` | Transitive | Used internally by the framework's API-backed criteria model (`clsBusinessApiCriteriaBase`) even though this library's objects are SQL-backed rather than API-backed.† |

## Dependency risks and notes
- The primary `IDataPortalInfo` (`DPI`) consumed by most objects in this library is injected by the
  caller; its underlying database engine cannot be confirmed from within this library, though
  observed Oracle-only stored-procedure/bind-variable usage in `clsPolicySecurity.CanAuditorAccessPolicy`
  is consistent with an Oracle-backed DPI.*
- `clsSQLDataLayer`, used by `clsPolicySecurity` to construct the secondary SQL Server BDS
  connection, is not defined in this library or its project references — it is supplied by a
  referenced SAIF internal NuGet package (most likely `SAIF.BOF.Framework.Connection` or
  `SAIF.Business`), so its internal configuration surface beyond the three passed-in parameters
  (`BDS_USER`, `bdsDatabase`, `BDS_DATABASENAME`) could not be verified from this library's source.**
- Several externally-referenced packages (`SAIF.HashUtil`, `SAIF.ResourceFiles`, `SAIF.Web.API.*`,
  `Autofac`, `FluentValidation`, `ImagingAPI.*`, `iTextSharp`, `PdfAPI.*`) show no direct usage in
  scanned source and are most likely transitive requirements of the BOF framework packages rather
  than dependencies this library relies on directly; treat with caution when assessing upgrade
  impact.*
- A secondary, non-primary database dependency (SQL Server BDS) exists solely to support
  authorization lookups in `clsPolicySecurity`; any change to `BDS_USER`/`bdsDatabase`/
  `BDS_DATABASENAME` Environment API keys or to the `cp_*` stored procedures directly impacts
  Group/Agent/LossControl authorization paths without affecting the Oracle-backed policy-view
  retrieval paths.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

> **Note:** Statements marked with `†` are derived from dependency library
> documentation via the Legends CLI. Statements marked with `*` were inferred
> from code structure or contextual evidence. Statements marked with `**` could
> not be confirmed; treat as unknown until verified.

## Sources
- `SAIF.Business.View.Policy\SAIF.Business.View.Policy.vbproj`
- `SAIF.Business.View.Policy\clsPolicySecurity.vb`
- `SAIF.Business.View.Policy\clsPolicyData.vb`
